1
Tính bất biến và hằng số
AI034Lesson 3
00:00

Trong một ngôn ngữ có kiểu tĩnh, tính bất biến là trạng thái nền tảng của dữ liệu, đảm bảo an toàn bộ nhớ và thực thi dự đoán được. Mặc dù các biến có thể bị che khuất hoặc làm cho có thể thay đổi, Hằng số đi xa hơn bằng cách liên kết một giá trị với tên một cách vĩnh viễn.

1. Sự cứng nhắc của hằng số

Khác với các biến thông thường nơi mà Suy luận kiểu cho phép trình biên dịch suy ra kiểu dữ liệu, thì hằng số bắt buộc phải có một gắn nhãn kiểu rõ ràng (ví dụ, : u32). Điều này duy trì các hợp đồng nghiêm ngặt trong mã nhị phân.

2. Đánh giá vào thời điểm biên dịch

Các hằng số không đơn thuần là các biến bất biến; chúng được đánh giá và "nhúng" vào mã nhị phân của chương trình trong quá trình biên dịch. Điều này cho phép trình biên dịch thực hiện biểu thức hằng số (như 60 * 60 * 3) trước khi chương trình nào chạy, giúp tối ưu hiệu suất.

let x = 5;Suy luận kiểuconst SECS: u32 = 60 * 3;Kiểu bắt buộcToán học tại thời điểm biên dịch

3. Tính bất biến tuyệt đối

Các hằng số đóng vai trò là "nguồn gốc duy nhất của sự thật." Chúng không thể được làm thay đổi bằng từ khóa mut và không thể bị che khuất trong cùng một phạm vi, đảm bảo các tham số then chốt của chương trình luôn không bị thay đổi trong suốt quá trình thực thi.

main.py
TERMINALbash — 80x24
> Ready. Click "Run" to execute.
>